package com.hkp.demo.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 工单表
 * </p>
 *
 * @author HuKangPing
 * @since 2023-02-22 14:20:35
 */
@Data
@TableName("t04_case")
@ApiModel(value = "Case对象", description = "工单表")
public class Case implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "case_id", type = IdType.AUTO)
    private String caseId;

    @ApiModelProperty("工单编号")
    private String caseNumber;

    @ApiModelProperty("工单名称")
    private String caseName;

    @ApiModelProperty("工单类型")
    private String caseType;

    @ApiModelProperty("工单内容")
    private String content;

    @ApiModelProperty("工单期望结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endTime;

    @ApiModelProperty("工单状态（0：进行中，1：已关闭，2：待发起）")
    private String status;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("创建人")
    private String createUser;

    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @ApiModelProperty("关闭时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime closeTime;

    @ApiModelProperty("流程实例id")
    private String processId;

    @ApiModelProperty("关联业务id")
    private String businessId;

    @ApiModelProperty("紧急程度,0一般 1紧急")
    private String emergencyLevel;

    private String attachmentId;

    @ApiModelProperty("创建类型，1手动创建 2系统创建")
    private String createType;


}
